package com.ikunikun.service;

import com.ikunikun.vo.OrderReportVO;
import com.ikunikun.vo.SalesTop10ReportVO;
import com.ikunikun.vo.TurnoverReportVO;
import com.ikunikun.vo.UserReportVO;

import javax.servlet.http.HttpServletResponse;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.time.LocalDate;

public interface ReportService {
	/**
	 * 统计指定时间区间的营业额数据
	 * @param begin
	 * @param end
	 * @return
	 */
	TurnoverReportVO getTurnoverStatistics(LocalDate begin, LocalDate end);

	/**
	 * 统计指定时间区间用户数量信息
	 * @param begin
	 * @param end
	 * @return
	 */
	UserReportVO getUserStatistics(LocalDate begin, LocalDate end);

	/**
	 * 订单统计
	 * @param begin
	 * @param end
	 * @return
	 */

	OrderReportVO getOrderStatistics(LocalDate begin, LocalDate end);

	/**
	 * 统计指定时间区间内的销量排名前10
	 * @param begin
	 * @param end
	 * @return
	 */
	SalesTop10ReportVO getSalesTop10(LocalDate begin, LocalDate end);

	/**
	 * 到处运营数据报表
	 * @param response
	 */
	void export(HttpServletResponse response) throws IOException;
}
